package com.thinkgem.jeesite.common.utils;

/**
 * Created by xiaole.zheng on 2017/7/23.
 */
public class Constons {
    public static String DELETE_Y= "1";
    public static String DELETE_N ="0";

    public static String Y = "Y";
    public static String N="N";

    /**
     * 仓库名称
     */
    public static enum WarehouseType {
        USKYN("美东新仓","1008190","US0003"),USLA("美东仓","1000008","US0001"),UKLE("欧洲1仓","1000069","UK0001"),UKMA("欧洲2仓","1005189","UK0002")
        ,DEBRE("德国仓","1000089","DE0001"),AUSYD("澳洲仓","1000001","EWD"),
        BEMO("比利时","1012190","BE0001"),USTX("美三仓","1018192","USTX"),UKGF("英三仓","1022191","UKGF");

        private String warehouseName;
        private String warehouseId;
        private String warehouseCode;

        WarehouseType(String warehouseName, String warehouseId, String warehouseCode) {
            this.warehouseName = warehouseName;
            this.warehouseId = warehouseId;
            this.warehouseCode = warehouseCode;
        }

        public String getWarehouseName() {
            return warehouseName;
        }

        public String getWarehouseId() {
            return warehouseId;
        }

        public String getWarehouseCode() {
            return warehouseCode;
        }

        public static WarehouseType getEnumByWarehouseCode(String warehouseCode){
            for(WarehouseType one: WarehouseType.values()){
                if(one.name().equals(warehouseCode)||one.getWarehouseCode().equals(warehouseCode)||one.getWarehouseId().equals(warehouseCode)||one.getWarehouseName().equals(warehouseCode)){
                    return one;
                }
            }
            return null;
        }


    }

    public static enum SystemType{
        CWM("TOM系统"),ERP("ERP系统"),OWMS("OWMS系统"),MMS("商品系统"),EM("事件系统"),IMS("国内ims"),OMS("国内OMS");
        private String systemName;

        SystemType(String systemName) {
            this.systemName = systemName;
        }


    }

    public static enum  UserType{
        Average_User("零时普工","0"),Nomar_User("正式普工","1"),Outsourcing("外包普工","2");

        private final String type;
        private final String typeCode;

        UserType(String type, String typeCode) {
            this.type = type;
            this.typeCode = typeCode;
        }

        public String getType() {
            return type;
        }

        public String getTypeCode() {
            return typeCode;
        }
    }

    public static enum HolidayType {

        Compassionate_Leave("事假","0"),Stick_Leave("病假","1"),Annual_leave("年假","2"),Paternity_leave("陪产假","3"),Marriage_holiday("婚假","4"),Antenatal_leave("产检假","5"),
        Funeral_leave("丧假","6"),Other_leave("其他假期","7"),Paid_leave("调休 ","8"),Maternity_leave("产假","9");
        private final String type;
        private final String typeCode;

        HolidayType(String type, String typeCode) {
            this.type = type;
            this.typeCode = typeCode;
        }

        public String getType() {
            return type;
        }

        public String getTypeCode() {
            return typeCode;
        }
    }
    
    public static enum CountryWarehouse {

        UK_Warehouse("英国仓","UK Warehouse");
        private final String type;
        private final String typeCode;

        CountryWarehouse(String type, String typeCode) {
            this.type = type;
            this.typeCode = typeCode;
        }

        public String getType() {
            return type;
        }

        public String getTypeCode() {
            return typeCode;
        }
    }
    
    public static enum AttanceWarehouse{
        USWC("USWC","004","美西仓"),USKYN("USKYN","005","美东仓"),DEBR("DEBR","009","德国仓"),
        AUSY("AUSY","006","澳洲仓"),ShangHai("ShangHai","100","上海仓"),ShenZhen("ShenZhen","101","深圳仓"),GuangZhou("GuangZhou","102","广州仓");
        private String warehouseName;
        private String warehouseCode;
        private String description;
        
        AttanceWarehouse(String warehouseName, String warehouseCode,String description) {
            this.warehouseName = warehouseName;            
            this.warehouseCode = warehouseCode;
            this.description = description;
        }

        public String getWarehouseName() {
            return warehouseName;
        }
        
        public String getWarehouseCode() {
            return warehouseCode;
        }
        
        public String getDescription() {
            return description;
        }    
        
    }
    
}
